import 'package:flutter/material.dart';
import 'package:flutter_house_manager/pages/House/house_list.dart';
import 'package:flutter_house_manager/pages/TabsPage/index.dart';
import '../pages/Login/index.dart';
import '../pages/NoticeDetail/index.dart';
import '../pages/Profile/index.dart';
import '../utils/TokenManager.dart';

Widget getRootWidget() {
  return MaterialApp(
    // 配置路由列表
    routes: {
      "/": (context) => const TabsPage(),
      "/noticeDetail": (context) => const NoticeDetail(),
      "/login": (context) => const LoginPage(),
      // "/profile": (context) => const ProfilePage(),
    },
    initialRoute: '/', // 第一个页面是哪个
    onGenerateRoute: (setting) {
      // 只要进入到这个池子里面 都是需要做token检查的 只要没有token 一律去登录页
      String token = tokenManager.getToken(); // 获取token
      if (token.isEmpty) {
        return MaterialPageRoute(
          builder: (context) => LoginPage(
            toName: setting.name,
          ),
        );
      }

      if (setting.name == "/profile") {
        // 有token放过去
        // 没有token去登录页
        // 要检查token
        return MaterialPageRoute(
          builder: (context) => const ProfilePage(),
        );
      }
      // 房屋列表
      if (setting.name == "/houselist") {
        // 有token放过去
        // 没有token去登录页
        // 要检查token
        return MaterialPageRoute(
          builder: (context) => const HouseList(),
        );
      }
    },
  );
}
